package cn.iocoder.yudao.module.reading.controller.admin.book.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.Data;

/**
 * 管理后台 - 绘本创建 Request VO
 *
 * @author 芋道源码
 */
@Schema(description = "管理后台 - 绘本创建 Request VO")
@Data
public class PictureBookCreateReqVO {

    @Schema(description = "绘本标题", requiredMode = Schema.RequiredMode.REQUIRED, example = "The Cat in the Hat")
    @NotBlank(message = "绘本标题不能为空")
    @Size(max = 200, message = "绘本标题长度不能超过200个字符")
    private String title;

    @Schema(description = "绘本描述", example = "经典的苏斯博士绘本")
    @Size(max = 1000, message = "绘本描述长度不能超过1000个字符")
    private String description;

    @Schema(description = "封面图片URL", example = "https://example.com/cover.jpg")
    private String cover;

    @Schema(description = "绘本集ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "绘本集ID不能为空")
    private Long bookSetId;

    @Schema(description = "排序", example = "1")
    private Integer sortOrder;

    @Schema(description = "是否启用", example = "true")
    private Boolean isActive = true;

}
